/*
 * 文件名：SpringBeanUtils.java
 * 版权：Copyright by will_awoke
 * 描述：
 * 修改人：lyh
 * 修改时间：2014-3-3
 * 跟踪单号：
 * 修改单号：
 * 修改内容：
 */

package com.qbgs.util;


import org.apache.log4j.Logger;
import org.springframework.context.ApplicationContext;

import com.qbgs.listener.AppListener;


/**
 * Spring bean实例获取
 * @author lyh
 * @version 2014-3-3
 * @see ContextBeanUtils
 * @since
 */

public class ContextBeanUtils
{

    /**
     * 日志
     */
    private static final Logger log = Logger.getLogger(ContextBeanUtils.class);

    /**
     * spring上下文
     */
    private static ApplicationContext context;

    static
    {
        //加载listener中已经设置完毕的context
        context = AppListener.ctx;
    }

    /**
     * 根据beanId获得bean实例
     * @param beanId
     * @return
     * @throws Exception 
     * @see
     */
    public static Object getBean(String beanId)
    {
        Object bean = context.getBean(beanId);
        
        if (bean == null)
        {
            log.warn(" ContextBeanUtils#getBean of beanId '" + beanId + "' is null... ");
            return null;
        }
        
        return bean;
    }

}